#include "widget.h"
#include "ui_widget.h"
#include <QShortcut>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    //使用快捷键，需要QShortcut类
    //按下键盘上的 - 号 和 = 号控制滑动条
    QShortcut *shortcut1 = new QShortcut(this);
    shortcut1->setKey(QKeySequence(Qt::Key::Key_Minus));
    QShortcut *shortcut2 = new QShortcut(this);
    shortcut2->setKey(QKeySequence(Qt::Key::Key_Equal));

    //绑定信号槽
    connect(shortcut1,&QShortcut::activated,this,&Widget::subHandle);
    connect(shortcut2,&QShortcut::activated,this,&Widget::addHandle);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::subHandle()
{
    //获取滑动条的值
    int value = ui->horizontalSlider->value();
    if(value <= ui->horizontalSlider->minimum()){
        return ;
    }
    ui->horizontalSlider->setValue(value - 5);
}

void Widget::addHandle()
{
    //获取滑动条的值
    int value = ui->horizontalSlider->value();
    if(value >= ui->horizontalSlider->maximum()){
        return ;
    }
    ui->horizontalSlider->setValue(value + 5);
}


void Widget::on_horizontalSlider_valueChanged(int value)
{
    //当滑动条值变化是，更新到label上
    ui->label->setText(QString("当前的值是: ") + QString::number(value));
}
